document.addEventListener('DOMContentLoaded', function() {
    // 获取用户ID
    const userId = localStorage.getItem('userId');
    if (!userId) {
        alert('用户信息获取失败，请重新登录');
        window.location.href = 'login.html';
        return;
    }

    // 加载用户信息
    fetchUserInfo(userId);

    // 加载首页推荐商品
    loadFeaturedProducts();

    // 注销按钮点击事件
    document.getElementById('logoutBtn').addEventListener('click', logout);

    // 查看订单按钮点击事件
    document.getElementById('viewOrdersBtn').addEventListener('click', viewOrders);

    // 修改个人信息按钮点击事件
    document.getElementById('updateProfileBtn').addEventListener('click', updateProfile);
});

function fetchUserInfo(userId) {
    // 获取用户信息
    fetch(`/api/users/${userId}`)
        .then(response => {
            if (!response.ok) {
                throw new Error('获取用户信息失败');
            }
            return response.json();
        })
        .then(user => {
            document.getElementById('userName').textContent = `用户名: ${user.username}`;
            document.getElementById('userEmail').textContent = `邮箱: ${user.email}`;
        })
        .catch(error => {
            console.error('获取用户信息出错:', error);
            alert('获取用户信息失败，请稍后再试');
        });
}

function loadFeaturedProducts() {
    // 获取首页推荐商品
    fetch('/api/products/featured')
        .then(response => {
            if (!response.ok) {
                throw new Error('获取推荐商品失败');
            }
            return response.json();
        })
        .then(products => {
            const featuredProductsSection = document.getElementById('featured-products');
            featuredProductsSection.innerHTML = '<h2>推荐商品</h2>';

            const productSlider = document.createElement('div');
            productSlider.className = 'product-slider';

            products.forEach(product => {
                const productCard = document.createElement('div');
                productCard.className = 'product-card';

                productCard.innerHTML = `
                    <img src="${product.image}" alt="${product.name}">
                    <h3>${product.name}</h3>
                    <p class="price">¥${product.price.toFixed(2)}</p>
                    <button class="btn-add-to-cart" data-id="${product.id}">加入购物车</button>
                `;

                // 添加加入购物车按钮点击事件
                const addToCartBtn = productCard.querySelector('.btn-add-to-cart');
                addToCartBtn.addEventListener('click', function() {
                    addToCart(product.id);
                });

                productSlider.appendChild(productCard);
            });

            featuredProductsSection.appendChild(productSlider);
        })
        .catch(error => {
            console.error('获取推荐商品出错:', error);
            alert('获取推荐商品失败，请稍后再试');
        });
}

function logout() {
    // 注销登录
    localStorage.removeItem('userId');
    window.location.href = 'login.html';
}

function viewOrders() {
    // 跳转到订单页面
    window.location.href = 'orders.html';
}

function updateProfile() {
    // 跳转到修改个人信息页面
    window.location.href = 'profile.html';
}

function addToCart(productId) {
    const userId = localStorage.getItem('userId');
    if (!userId) {
        alert('用户信息获取失败，请重新登录');
        window.location.href = 'login.html';
        return;
    }

    fetch('/api/cart/add', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json',
        },
        body: JSON.stringify({ userId, productId, quantity: 1 }),
    })
        .then(response => {
            if (!response.ok) {
                throw new Error('加入购物车失败');
            }
            return response.json();
        })
        .then(data => {
            alert('商品已加入购物车');
        })
        .catch(error => {
            console.error('加入购物车出错:', error);
            alert('加入购物车失败，请稍后再试');
        });
}